The nnml spool mail format isn't compatible with any other known format. It should be used with some caution.
If you use this back end,
Gnus will split all incoming mail into files, one file for each
mail, and put the articles into the corresponding directories
under the directory specified by the nnml-directory
variable. The default value is ~/Mail/.
You do not have to create any directories beforehand; Gnus will take care of all that.
If you have a strict limit as to how many files you are allowed to store in your account, you should not use this back end. As each mail gets its own file, you might very well occupy thousands of inodes within a few weeks. If this is no problem for you, and it isn't a problem for you having your friendly systems administrator walking around, madly, shouting “Who is eating all my inodes?! Who? Who!?!”, then you should know that this is probably the fastest format to use. You do not have to trudge through a big mbox file just to read your new mail.
nnml is probably the slowest back end when it
comes to article splitting. It has to create lots of files, and
it also generates NOV databases for the
incoming mails. This makes it possibly the fastest back end when
it comes to reading mail.
When the marks file
is used (which it is by default), nnml servers have
the property that you may backup them using tar or
similar, and later be able to restore them into Gnus (by adding
the proper nnml server) and have all your marks be
preserved. Marks for a group are usually stored in the
.marks file (but see
nnml-marks-file-name) within each nnml
group's directory. Individual nnml groups are also
possible to backup, use G m to restore the group
(after restoring the backup into the nnml directory).
If for some reason you believe your .marks files are screwed up, you can just delete them all. Gnus will then correctly regenerate them next time it starts.
Virtual server settings:
nnml-directorynnml
directories will be placed under this directory. The default is
the value of message-directory (whose default
value is ~/Mail).nnml-active-filennml server. The default is ~/Mail/active.nnml-newsgroups-filennml group descriptions file. See Newsgroups
File Format. The default is ~/Mail/newsgroups.nnml-get-new-mailnil, nnml will read incoming
mail. The default is t.nnml-nov-is-evilnil, this back end will ignore any
NOV files. The default is
nil.nnml-nov-file-namennml-prepare-save-mail-hooknnml-marks-is-evilnil, this back end will ignore any
marks files. The default is
nil.nnml-marks-file-namennml-use-compressed-filesnil, nnml will allow using
compressed message files. This requires
auto-compression-mode to be enabled (see Compressed
Files). If the value of
nnml-use-compressed-files is a string, it is used
as the file extension specifying the compression program. You
can set it to ‘.bz2’ if your Emacs supports it. A
value of t is equivalent to
‘.gz’.nnml-compressed-files-size-thresholdnnml-use-compressed-files is
non-nil.If
your nnml groups and NOV files
get totally out of whack, you can do a complete update by typing
M-x nnml-generate-nov-databases. This command will
trawl through the entire nnml hierarchy, looking at
each and every article, so it might take a while to complete. A
better interface to this functionality can be found in the server
buffer (see Server
Commands).